//index.js
//获取应用实例
const app = getApp()

Page({
  data: {
    longitude: 0,
    latitude: 0,
    markers: []
  },
  onLoad() {
    // 创建 mapContext
    this.mapContext = wx.createMapContext('mymap', this)
  },
  // 在第一次渲染完成后，获取经纬度，定位地图
  onReady() {
    // 获取当前定位中心点
    wx.getLocation({
      type: 'gcj02',
      success: (res) => {
        this.setData({
          longitude: res.longitude,
          latitude: res.latitude,
          markers: [{
            iconPath: "/resources/pin.png",
            id: 1,
            latitude: res.latitude,
            longitude: res.longitude,
            width: 22,
            height: 31
          }]
        })

        // 查询交易列表数据
        this.getTradeList()
      },
    })
  },
  // 回到中心点
  backToCenter() {
    this.mapContext.moveToLocation()
  },
  onShareAppMessage() {
    return {
      title: '萌宠交易平台',
      path: '/pages/index/index'
    }
  },
  // 获取周围发布的交易信息
  getTradeList() {
    wx.request({
      url: 'http://rap2api.taobao.org/app/mock/224284/api/v1/pet/trade',
      success: (res) => {
        // 向 markers 数组中添加当前获取到的列表数据
        const marker = res.data.data.list.map(item => {
          const {id, latitude, longitude, type} = item
          return {
            iconPath: '/resources/'+ type +'.png',
            id,
            latitude,
            longitude,
            width: 20,
            height: 20
          }
        })
        this.setData({
          markers: [
            ...this.data.markers,
            ...marker
          ]
        })
      }
    })
  },
  // marker 上点击事件处理程序
  markerTapHandler(e) {
    wx.navigateTo({
      url: '/pages/detail/detail?id=' + e.markerId,
    })
  }
})
